1. Field of the Invention
The present invention relates to a technique for preventing the unauthorized use of programs.
2. Description of the Related Art
Computer programs often include data for preventing unauthorized use. For example, it is not preferable to allow a user who does not pay a charge to extract image data from a program when the image data is fee-based. Furthermore, there is a case that confidential information is included in a program regardless of whether or not the information is fee-based. On the other hand, software (debugger) for supporting the development of programs is widely known. For example, a program developer develops a program to perform a desired operation by using a debugger to execute in a stepwise manner. It helps the program developer to understand the state of the program under development and he solves a problem within the program.
A concern in this situation is a case where an unauthorized user attempts to exploit data within a program, for example, by using the debugger. For this reason, a technique was desirable to prevent data within a program from being exploited, such as via a debugger.
Japanese Patent Laid-Open Publication No. Hei 11-175336 discloses a technique for referencing a memory location (including debug register) in a processor to judge whether or not it is in a debug mode and preventing program execution if it is in the debug mode.
In the technique described in Japanese Patent Laid-Open Publication No. Hei 11-175336, the memory location in the processor is referenced. However, with regard to whether or not the processor has a memory location (such as debug register), this is dependent on the architecture of the processor. Thus, the technique described in Japanese Patent Laid-Open Publication No. Hei 11-175336 cannot be utilized by processors that do not have debug registers.
Furthermore, the technique described in Japanese Patent Laid-Open Publication No. Hei 11-175336 is not adaptable to debugging methods in which the content of the memory location in the processor is not influenced.